home *** CD-ROM | disk | FTP | other *** search
/ BMUG PD-ROM A / PD-ROM A.iso / Programming / Programming Languages / XLISP 2.0 / XLISP Tools / Utility (UL) / TRACE.LSP < prev    next >
Encoding:
Lisp/Scheme  |  1988-04-07  |  953 b   |  35 lines  |  [TEXT/ttxt]

  1. ;; Larry Mulcahy 1988
  2. ;; trace functions
  3.  
  4. (provide 'trace)
  5. (require 's-expression "s-expr")
  6. (require 'set)
  7.  
  8. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  9. ; trace 
  10. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  11.  
  12. (defun trace (&rest functions)
  13.   (dolist (f (reverse functions))
  14.     (setq *tracelist* (adjoin f *tracelist*)))
  15.   *tracelist*)
  16.  
  17. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  18. ; untrace 
  19. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  20.  
  21. (defun untrace (&optional functions)
  22.   (if *tracelist*
  23.     (if functions
  24.       (setq *tracelist* (set-difference *tracelist* functions))
  25.       (pop *tracelist*))))
  26.  
  27. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  28. ; untrace-all 
  29. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  30.  
  31. (defun untrace-all ()
  32.   (let ((x *tracelist*))
  33.     (setq *tracelist* nil)
  34.     x))
  35.